package com.zhipu.balance.ui.vm.home.calculate.rice

import android.text.TextUtils
import androidx.databinding.ObservableField
import com.zhipu.balance.mobile.event.Personnel
import com.zhipu.balance.mobile.event.RecordRice
import com.zhipu.balance.remotedata.systemapi.SystemApiService
import com.zhipu.balance.ui.vm.BaseViewModel
import com.zhipu.balance.utils.CommonUtils

/**
 * 互混
 */
class RiceIntermixingViewModel(mSystemApiService : SystemApiService) : BaseViewModel(mSystemApiService){

    /**
     * 重量
     */
    var weighing : String? = null

    /**
     * 稻谷实体
     */
    var mRecordRice : RecordRice? = null


    /**
     * 当前的检查人员
     */
    var mPersonnel : Personnel? = null

    /**
     * 互混-试样质量
     */
    var massOfMixedSample = ObservableField("")
    /**
     * 异种粮质量
     */
    var mixedGrainQuality = ObservableField("")

    /**
     * 互混-结果
     */
    var mixedGrainResult = ObservableField("")



    /**
     * 更新页面
     */
    fun updateRecordRice(){
        if(!TextUtils.isEmpty(mRecordRice?.mixedGrainRecorder)){
            //互混-试样质量
            massOfMixedSample.set(mRecordRice?.massOfMixedSample.toString())
            //异种粮质量
            mixedGrainQuality.set(mRecordRice?.mixedGrainQuality.toString())
            //互混-结果
            mixedGrainResult.set(mRecordRice?.mixedGrainResult.toString())
        }
    }


    /**
     * 释放更新页面
     */
    fun releaseRecordRice(){
        //互混-试样质量
        massOfMixedSample.set("")
        //异种粮质量
        mixedGrainQuality.set("")
        //互混-结果
        mixedGrainResult.set("")
    }




    /**
     * 互混-试样质量
     */
    fun BulkQuality(){
        massOfMixedSample.set(weighing)
        mRecordRice?.massOfMixedSample = massOfMixedSample.get()?.toDouble()
    }

    /**
     * 异种粮质量
     */
    fun QualityDifferentCrops(){
        mixedGrainQuality.set(weighing)
        mRecordRice?.mixedGrainQuality = mixedGrainQuality.get()?.toDouble()
    }


    /**
     * 计算
     */
    fun calculation(){
        /**
         * 计算出糙率
         */
        var CalculateRoughness = CommonUtils.formatDouble(mRecordRice!!.mixedGrainQuality / mRecordRice!!.massOfMixedSample * 100)
        mRecordRice?.mixedGrainResult = CalculateRoughness
        mixedGrainResult.set(CalculateRoughness.toString())


        /**
         * 互混记录员
         */
        mRecordRice!!.mixedGrainRecorder = mPersonnel!!.name



        //互混-试样质量
        if(mRecordRice?.massOfMixedSample == 0.00){
            massOfMixedSample.set("0.00")
        }
        //异种粮质量
        if(mRecordRice?.mixedGrainQuality == 0.00){
            mixedGrainQuality.set("0.00")
        }

    }

}